<?php

Class Mdeposito extends CI_Model {

    /**
     * Carga todos los datos de los diferentes depositos disponibles y lo devuelve en forma de array de objetos.
     *
     * @param integer $idMovimiento
     * @return mixed
     */
    function getDepositos() {
        $this->db->select('*');
        $this->db->from('deposito');
        $resultado = $this->db->get();
        return $resultado->result();
    }

    /**
     * Carga los datos de un movimiento y lo devuelve en forma de array de objetos.
     *
     * @param integer $idMovimiento
     * @return mixed
     */
    public function infoDeposito($id) {
        $this->db->select("*");
        $this->db->from("deposito");
        $this->db->where('id', $id);
        $depo = $this->db->get();
        return $depo->result();
    }
    
    /**
     * Carga los datos de una solicitud de deposito, y genera una solicitud, y un deposito inactivo para un cliente.
     *
     * @param integer $idMovimiento
     * @param integer $importe
     * @param integer $cuenta
     * @param integer $cliente
     */
    public function guardarSolicitud($iddep, $importe, $cuenta, $cliente) {
        $this->db->query("insert into solicitud (idTipoSolicitud, idCuenta,idCliente) values(3," . $cuenta . "," . $cliente . ")");
        $query = $this->db->query("SELECT id FROM solicitud where idCuenta=" . $cuenta . " and idCliente=" . $cliente . " order by id desc LIMIT 1");
        $row = $query->row_array();
        $idSolicitud = $row['id'];
        $this->db->query("insert into depositocliente (idCliente,idCuenta,idDeposito,idSolicitud,importe,activo)
        values (" . $cliente . "," . $cuenta . "," . $iddep . "," . $idSolicitud . "," . $importe . ",0)");
    }
    
    /**
     * Carga los datos de los depositos de un cliente y lo devuelve en forma de array de objetos.
     *
     * @param integer $idCliente
     * @return mixed
     */
    public function misDepositos($idCliente) {
        $this->db->select('concat(codigoEntidad," - ", concat(codigoOficina," - ",concat(codigoControl," - ",codigoCuenta))) as cuenta,
        depositocliente.importe, deposito.tae, deposito.plazo, date_format(fechaSolicitud,"%d/%m/%Y") as fechaSolicitud ,
        activo, date_format(fechaVencimiento,"%d/%m/%Y") as fechaVencimiento, estadoSolicitud.tag as estado', false);
        $this->db->from('cuenta, depositocliente, deposito, estadosolicitud, solicitud');
        $this->db->where('cuenta.id = depositocliente.idCuenta');
        $this->db->where('depositocliente.idSolicitud = solicitud.id');
        $this->db->where('solicitud.idEstadoSolicitud = estadosolicitud.id');
        $this->db->where('depositocliente.idDeposito = deposito.id');
        $this->db->where('depositocliente.idCliente = ' . $idCliente);
        return $this->db->get()->result();
    }

}